package com.coderman.business.service;

import com.coderman.business.mapper.ConsultantMapper;
import com.coderman.business.service.base.IBaseService;
import com.coderman.common.error.SystemException;
import com.coderman.common.model.consult.Consultant;
import com.coderman.common.vo.business.ConsultVO;
import com.coderman.common.vo.system.PageVO;

import java.util.List;

/**
 * 咨询信息管理业务层接口
 * @author  文晓平
 * @Date 2023-1-9
 * @version 1.0
 */
public interface IConsultantService extends IBaseService<ConsultantMapper,Consultant, Integer> {
    PageVO<Consultant> findList(Integer pageNum, Integer pageSize, ConsultVO consultVO);

    /**
     * 添加咨询者信息
     * @param consultVO
     */
    void add(ConsultVO consultVO);

    /**
     * 编辑咨询信息
     * @param id
     * @return
     */
    ConsultVO edit(Integer id) throws SystemException;

    /**
     * 更新咨询信息
     * @param id
     * @param consultVO
     */
    void update(Integer id, ConsultVO consultVO) throws SystemException;

    /**
     * 删除咨询信息
     * @param id
     */
    void delete(Long id) throws SystemException;

    /**
     * 所有咨询信息
     * @return
     */
    List<ConsultVO> findAllVO();


    /**
     * 全部咨询信息
     * @return
     */
    List<Consultant> findAll();

    /**
     * 更新状态
     *
     * @param id
     * @param status
     */
    void updateStatus(Integer id, Integer status) throws SystemException;

}

